草庐IT

unty 按键

全部标签

c++ - 如何使用 XCB 将按键事件发送到应用程序?

如何使用XCB从另一个程序向窗口(当前事件窗口)发送按键或按键释放事件?我找到了一些使用XLib的教程,但是我想使用XCB。我想我必须调用xcb_send_event,但是我不知道将它作为参数传递什么。 最佳答案 您应该能够使用XTEST扩展来伪造对事件窗口的输入,使用xcb_test_fake_input()函数。#include...xcb_test_fake_input(c,XCB_KEY_PRESS,keycode,XCB_CURRENT_TIME,XCB_NONE,0,0,0);xcb_test_fake_input(c,

C# 文本框按键控件帮助

我有一个标准文本框,我想在按键时执行一个操作。我目前有这段代码:privatevoididTextEdit_KeyPress(objectsender,System.Windows.Forms.KeyPressEventArgse){if(e.KeyChar==(char)Keys.Enter/Return){e.Handled=true;SearchButtonClick(sender,EventArgs.Empty);}}问题是,我在那里尝试了Enter和Return,这就是原因所在。它只会触发检查与shift、control等不同的普通键。我如何设计它才能以相同的方式拾取和使用e

c# - 当 Windows Shell 替换为 Windows Forms 应用程序时,第一次按键丢失

我已按照thisSOquestion中给出的方法成功替换了WindowsShell.但是,我检测到第一个按键丢失了,这对用户来说有点烦人。我们尝试过的解决方案是在OnShown事件中激活表单:privatevoidOnShownLoginForm(objectz_sender,EventArgsz_e){Activate();m_loginTextBox.Focus();}但这并没有解决问题。你知道发生了什么事吗? 最佳答案 您可以尝试使用System.Windows.Forms.SendKeys类(MSDNDocumentatio

windows - 如何检测 C# win8 Metro 中 BasicPage 上的按键

我想捕捉按键,而不管焦点在任何控件上。触发什么事件以及在哪里触发。我试图覆盖OnKeyDown和OnKeyUp,但这似乎不起作用 最佳答案 UIElements有一个点击事件您可以在此处阅读有关事件的更多信息http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh465387.aspx 关于windows-如何检测C#win8Metro中BasicPage上的按键,我们在StackOverflow上找到一个类似的问题:

c# - Windows 中是否有我无法处理的特殊按键事件?

在我的C#程序中是否有任何我无法处理的关键事件?例如,我能否以不同的方式实现Windows的事件:Ctrl+Alt+Del、Alt+Tab、WindowsKey+D等。 最佳答案 请注意,在任何情况下都绝对无法绕过Windows中Ctrl+Alt+Del的自动处理。因此,即使您可以在程序中将其作为事件处理,用户仍将获得额外的任务管理器/登录管理器。 关于c#-Windows中是否有我无法处理的特殊按键事件?,我们在StackOverflow上找到一个类似的问题:

windows - 使用 KBDLLHOOKSTRUCT 确定第一次按键

我在Windows上使用低级键盘Hook。它就像一个魅力,尽管事实上我目前无法判断该键是最初按下还是再次按下。documentation(+here)表示,第7位保持过渡状态。但这似乎只有在释放key时才是正确的。遗憾的是,当我第一次按下该键时,第7位没有设置。有什么方法可以判断最初是否按下了键? 最佳答案 我最近碰巧遇到了这个问题。我找不到任何好的解决方案,但我最终在SetWindowHookEx之前使用了一个标志和一个GetAsyncKeyState。BOOLwasDown;LRESULTCALLBACKLowLevelKeyb

python - 如何使用pywinauto模拟游戏中的按键

一年来我一直在尝试各种事情。我是python的初学者。做了欧拉计划的前两道题。我尝试了几种方法来模拟我玩的游戏中的按键。我可以使用自动热键和宏键盘/鼠标轻松地做到这一点。但是,我想通过Python或C来完成。我的猜测是win32api在视频游戏中被忽略,我需要通过DirectX模拟按键。提前致谢。这是我最近的尝试……失败了。每次运行游戏的新实例时,我都必须捕获/更改handle。我的模拟键可以在浏览器和记事本中使用,但不能在游戏中使用。不工作,我的意思是没有用户输入。以下代码会切换到窗口,但不会模拟用户的输入。importpywinautoimporttimefrompywinauto

python - 单独线程中 Python 中的按键回显不显示第一个击键

我会尝试发布一个最小的工作示例,但不幸的是,这个问题只需要很多部分,所以我已尽我所能将其精简。首先,我使用了一个简单的脚本,它通过函数调用来模拟按键。这是从here调整而来的.importctypesSendInput=ctypes.windll.user32.SendInputPUL=ctypes.POINTER(ctypes.c_ulong)classKeyBdInput(ctypes.Structure):_fields_=[("wVk",ctypes.c_ushort),("wScan",ctypes.c_ushort),("dwFlags",ctypes.c_ulong),(

windows - 您可以重新映射特定键盘的按键吗?

我的电脑上连接了两个键盘。一个普通的全尺寸键盘和一个数字小键盘。我想“重新映射”数字键盘上的键,但不使用全键盘。因此,当用户在键盘上按下“5”时,它会被重新映射到“媒体播放”键,但如果在全键盘的键盘上按下相同的“5”,我会得到一个“5”。本质上,我想把那个独立的数字小键盘变成一个媒体控制设备。不幸的是,我不确定如何进行这项工作。Windows有一个“原始输入”功能,可以区分键盘,但只允许读取键-不能重新映射它们。有键盘钩子(Hook)(低级和高级)可以重新映射击键,但它们不区分键盘。我可以结合使用这两种方法吗?为此,我必须确保在键盘Hook启动之前处理原始输入消息。是这样吗?此外,我了

c - 你如何编写一个 C 程序来通过按键递增一个数字并每秒自动递减它?

我正在尝试编写一个程序,其中的数字从0开始,但是当您按下任意键时,它会递增1。如果没有按下任何键,它会每秒递减1,直到达到0。每个增量或减量都显示在控制台窗口上。我的方法的问题是在我按下一个键之前没有任何反应(也就是说,它检查是否使用getch()按下了任何东西)。我如何检查没有按下任何东西?当然,!getch()不起作用,因为要使其起作用,它仍然需要检查按键,这会使目的本身无效。操作系统:Windows10企业版,IDE:代码::blockvoidmain(){inti,counter=0;for(i=0;i=1){if(getch()){break;}else{delay(1000